package cn.com.generaldata.os.service.indicator_constant;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;

public class ProvinceIndicatorConstant {

	public static final String GOP_INDICATOR_NAME = "海洋生产总值";
	public static final String GDP_INDICATOR_NAME = "地区生产总值";

	public static final String GDP_GROWTH_RATE_INDICATOR_NAME = "地区生产总值增长速度";
	public static final String GOP_GROWTH_RATE_INDICATOR_NAME = "海洋生产总值增长速度";

	public static final String MARINE_ADDVALUE_NAME = "海洋产业增加值";
	public static final String MAJOR_MARINE_ADDVALUE_NAME = "主要海洋产业增加值";
	public static final String RELATED_MARINE_ADDVALUE_NAME = "海洋相关产业增加值";

	public static final String FIRST_INDICATOR_NAME = "海洋第一产业增加值";
	public static final String SECOND_INDICATOR_NAME = "海洋第二产业增加值";
	public static final String THIRD_INDICATOR_NAME = "海洋第三产业增加值";

	// public static final String FIRST_ADDVALUE_NAME = "海洋第一产业增加值";
	// public static final String SECOND_ADDVALUE_NAME = "海洋第二产业增加值";
	// public static final String THIRD_ADDVALUE_NAME = "海洋第三产业增加值";

	public static final String FIRST_RATE_INDICATOR_NAME = "海洋第一产业增加值占海洋生产总值比重";
	public static final String SECOND_RATE_INDICATOR_NAME = "海洋第二产业增加值占海洋生产总值比重";
	public static final String THIRD_RATE_INDICATOR_NAME = "海洋第三产业增加值占海洋生产总值比重";

	public static final String FIRST_EMPLOYED_INDICATOR_NAME = "第一产业劳动力人数";
	public static final String SECOND_EMPLOYED_INDICATOR_NAME = "第二产业劳动力人数";
	public static final String THIRD_EMPLOYED_INDICATOR_NAME = "第三产业劳动力人数";

	public static final String FISHERY_ADDVALUE_NAME = "海洋渔业增加值";
	public static final String OILGAS_ADDVALUE_NAME = "海洋油气业增加值";
	public static final String Mining_ADDVALUE_NAME = "海洋矿业增加值";
	public static final String SALT_ADDVALUE_NAME = "海洋盐业增加值";
	public static final String MSI_ADDVALUE_NAME = "海洋船舶工业增加值";
	public static final String MCI_ADDVALUE_NAME = "海洋化工业增加值";
	public static final String MBI_ADDVALUE_NAME = "海洋生物医药业增加值";
	public static final String MEAI_ADDVALUE_NAME = "海洋工程建筑业增加值";
	public static final String MEPI_ADDVALUE_NAME = "海洋电力业增加值";
	public static final String MSUI_ADDVALUE_NAME = "海水利用业增加值";
	public static final String MCTI_ADDVALUE_NAME = "海洋交通运输业增加值";
	public static final String COASTAL_TOUR_ADDVALUE_NAME = "滨海旅游业增加值";

	public static final String FISHERY_PROPORTION_NAME = "海洋渔业增加值占主要海洋产业增加值比重";
	public static final String OILGAS_PROPORTION_NAME = "海洋油气业增加值占主要海洋产业增加值比重";
	public static final String Mining_PROPORTION_NAME = "海洋矿业增加值占主要海洋产业增加值比重";
	public static final String SALT_PROPORTION_NAME = "海洋盐业增加值占主要海洋产业增加值比重";
	public static final String MSI_PROPORTION_NAME = "海洋船舶工业增加值占主要海洋产业增加值比重";
	public static final String MCI_PROPORTION_NAME = "海洋化工业增加值占主要海洋产业增加值比重";
	public static final String MBI_PROPORTION_NAME = "海洋生物医药业增加值占主要海洋产业增加值比重";
	public static final String MEAI_PROPORTION_NAME = "海洋工程建筑业增加值占主要海洋产业增加值比重";
	public static final String MEPI_PROPORTION_NAME = "海洋电力业增加值占主要海洋产业增加值比重";
	public static final String MSUI_PROPORTION_NAME = "海水利用业增加值占主要海洋产业增加值比重";
	public static final String MCTI_PROPORTION_NAME = "海洋交通运输业增加值占主要海洋产业增加值比重";
	public static final String COASTAL_TOUR_PROPORTION_NAME = "滨海旅游业增加值占主要海洋产业增加值比重";

	public static final String MEC_INDICATOR_NAME = "海洋经济直接贡献率";

	public static final String OCEAN_EMPLOYED_INDICATOR_NAME = "涉海就业人员总数";
	public static final String EMPLOYED_INDICATOR_NAME = "就业人员总数";
	public static final String OCEAN_EMPLOYED_RATE_INDICATOR_NAME = "涉海就业人员占地区就业人员比重";
	public static final String OCEAN_EMPLOYED_CONTRIBUTION_INDICATOR_NAME = "涉海就业直接贡献率";
	public static final String OCEAN_PERSON_NAME = "沿海城市人口总数";
	public static final String JS_POPULATION_NAME = "江苏省人口总数";

	public static final String NATION_AREA_ID = "0";
	public static final String PROVICE_AREA_ID = "320000000000000";
	/** 其他沿海市id */
	public static final String OTHER_CITY_AREA_ID = "329900000000000";
	/** 沿海三市地区id **/
	public static final String[] CITYS = { "320700000000000", "320900000000000", "320600000000000" };

	public static final String TOTAL_INVESTMENT_FIXED_ASSETS_INDICATOR_NAME = "全社会固定投资";
	public static final String SCIENCE_TECHNOLOGY_INPUT_INDICATOR_NAME = "科技投入";

	/** 海洋生产总值预测年数 */
	public static final String GOP_FORECAST_YEAR_INDICATOR_NAME = "海洋生产总值预测年数";

	/** 其他沿海省市 **/
	public static final List<String> OTHER_COASTAL_PROVINCES = new ArrayList<String>() {
		{
			add("120000000000000");// 天津市
			add("130000000000000");// 河北省
			add("210000000000000");// 辽宁省
			add("370000000000000");// 山东省
			add("310000000000000");// 上海市
			add("330000000000000");// 浙江省
			add("350000000000000");// 福建省
			add("440000000000000");// 广东省
			add("450000000000000");// 广西壮族自治区
			add("460000000000000");// 海南省
		}
	};

	public static Map<String, String> MAJOR_MARINE_INDUSTRY_MAP = null;
	static {
		Map<String, String> tempMap = Maps.newHashMapWithExpectedSize(12);
		tempMap.put("01", "海洋渔业");
		tempMap.put("04", "海洋盐业");
		tempMap.put("05", "海洋船舶工业");
		tempMap.put("06", "海洋化工业");
		tempMap.put("07", "海洋生物医药业");
		tempMap.put("08", "海洋工程建筑业");
		tempMap.put("09", "海洋电力业");
		tempMap.put("10", "海水利用业");
		tempMap.put("11", "海洋交通运输业");
		tempMap.put("12", "滨海旅游业");
		MAJOR_MARINE_INDUSTRY_MAP = ImmutableMap.copyOf(tempMap);
	}
	public static Map<String, String> MAJOR_MARINE_INDUSTRY_ADD_VALUE_MAP = null;
	static {
		Map<String, String> tempMap = Maps.newHashMapWithExpectedSize(12);
		tempMap.put("01", "海洋渔业增加值");
		tempMap.put("04", "海洋盐业增加值");
		tempMap.put("05", "海洋船舶工业增加值");
		tempMap.put("06", "海洋化工业增加值");
		tempMap.put("07", "海洋生物医药业增加值");
		tempMap.put("08", "海洋工程建筑业增加值");
		tempMap.put("09", "海洋电力业增加值");
		tempMap.put("10", "海水利用业增加值");
		tempMap.put("11", "海洋交通运输业增加值");
		tempMap.put("12", "滨海旅游业增加值");
		MAJOR_MARINE_INDUSTRY_ADD_VALUE_MAP = ImmutableMap.copyOf(tempMap);
	}

	/** 贡献率默认ALPHA参数 */
	public static final double ALPHA = 0.35;

	/** 三次产业结构增加值 **/
	public static final List<String> THREE_INDUSTRY_STRUCT_ADDVALUE = new ArrayList<String>() {
		{
			add(FIRST_INDICATOR_NAME);
			add(SECOND_INDICATOR_NAME);
			add(THIRD_INDICATOR_NAME);

		}
	};

	public static final String INDUSTRY_STRUCT_CHANGE_NAME = "产业结构变动度";
	public static final String SALE_PRICE_NAME = "零售价格指数";
	public static final String SALE_GOODS_NAME = "消费品零售总额";
	public static final String RURAL_ENGEL = "农村恩格尔系数";
	public static final String CITY_ENGEL = "城镇恩格尔系数";
	public static final String GDPDEFLATOR = "地区生产总值平减指数";
	/** 人均GDP变异系数权重 */
	public static final Double PERSONGDPCOEFIC = 0.1000795;
	/** 区位熵变异系数权重 */
	public static final Double LOCATIONENTROPYCOEFIC = 0.1000795;
	/** W */
	public static final Integer[][] MORANW = { { 0, 1, 0 }, { 1, 0, 1 }, { 0, 1, 0 } };

	/** 景气指数先行组指标 **/
	public static final List<String> BEFOREHAND_INDICATOR_NAMES = new ArrayList<String>() {
		{
			add("海洋造船完工量增长率");
			add("海洋货物运输量增长率");
			add("海水养殖占海水产品产量的比重增长率");
			add("港口标准集装箱吞吐量增长率");
			add("沿海城市生产总值可比价增长率");
			add("消费品零售总额增长率");
			add("贷款余额增长率");
			add("远洋货物运输量增长率");
		}
	};

	/** 景气指数一致组指标 **/
	public static final List<String> CONSISTENCY_INDICATOR_NAMES = new ArrayList<String>() {
		{
			add("主要海洋产业增加值可比价增长率");
			add("狭义货币供应量增长率");
			add("财政收入增长率");
			add("财政支出增长率");
			add("海水养殖产量增长率");

		}
	};

	/** 景气指数滞后组指标 **/
	public static final List<String> LAG_INDICATOR_NAMES = new ArrayList<String>() {
		{
			add("零售价格指数增长率");
			add("存款余额增长率");
			add("人民储蓄额增长率");
			add("进出口总额增长率");

		}
	};
	/** 综合预警指标 **/
	public static final List<String> COMPREHEN_WARNING_NAMES = new ArrayList<String>() {
		{
			add("海洋造船完工量增长率");
			add("海洋货物运输量增长率");
			add("沿海城市生产总值可比价增长率");
			add("消费品零售总额增长率");
			add("贷款余额增长率");
			add("远洋货物运输量增长率");
			add("狭义货币供应量增长率");
			add("财政收入增长率");
			add("财政支出增长率");
			add("海水养殖产量增长率");
		}
	};

	public static final String LIGHTING = "信号灯";

	public static final String COMPREHENWARNING = "综合预警指数";

	public static final String FRONTCONNECT = "前向";
	public static final String BACKCONNECT = "后向";

	public static final int PROVINCE_DATA_START_YEAR = 2001;

	public static List<String> COEFFICIENT_PRODUCT_SUB_TYPE = ImmutableList.of("最终消费支出", "资本形成", "出口");
	public static List<String> COEFFICIENT_PRODUCT_SUB_TYPE_SUFFIX = ImmutableList.of("x", "z", "c");
}
